package com.mengtian_tech.smart_lab.entity.student;

import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;

import org.jeecgframework.poi.excel.annotation.Excel;

/**   
 * 学生账户交易信息
 *
 */
@Entity
@Table(name = "student_account_tx", schema = "")
@SuppressWarnings("serial")
public class AccountTransaction implements java.io.Serializable {
	/**主键*/
	@Id
	@Column(name="id",unique=true)
	private java.lang.String id;
	 
	/**学号*/
	@Excel(name="学号")
	@Column(name="sut_no")
	private java.lang.String stuNo;
	
	@Excel(name="姓名")
	@Column(name="student_name")
	private String studentName;
	
	/** 账号Id */
	@Column(name="account_id")
	private String accountId;
	
	/** 交易日期  */
	@Excel(name="日期")
	@Column(name="tx_date")
	private Date txDate;
	
	/** 交易金额 */
	@Excel(name="交易金额")
	@Column(name="tx_amount")
	private BigDecimal txAmount;
	
	@Enumerated(EnumType.ORDINAL)
	private TxType txType;
	
	@Column(name="operate_user_id")
	private String operateUserId;
	
	@Column(name="operate_user_name")
	private String operateUserName;
	
	/** 交易后账号余额  */
	@Excel(name="余额")
	@Column(name="after_balance")
	private BigDecimal afterBalance;
	
	/** 交易前余额 */
	@Column(name="before_balance")
	private BigDecimal beforeBalance;
	
	@Excel(name="操作")
	@Transient
	private String txTypeName; 
	
	private Integer isDeleted;
	
	@Column(name="user_id")
	private String userId;
	
	@Column(name="user_name")
	private String userName;

	public java.lang.String getId() {
		return id;
	}

	public void setId(java.lang.String id) {
		this.id = id;
	}

	public java.lang.String getStuNo() {
		return stuNo;
	}

	public void setStuNo(java.lang.String stuNo) {
		this.stuNo = stuNo;
	}

	public String getStudentName() {
		return studentName;
	}

	public void setStudentName(String studentName) {
		this.studentName = studentName;
	}

	public String getAccountId() {
		return accountId;
	}

	public void setAccountId(String accountId) {
		this.accountId = accountId;
	}

	public Date getTxDate() {
		return txDate;
	}

	public void setTxDate(Date txDate) {
		this.txDate = txDate;
	}

	public BigDecimal getTxAmount() {
		return txAmount;
	}

	public void setTxAmount(BigDecimal txAmount) {
		this.txAmount = txAmount;
	}

	public TxType getTxType() {
		return txType;
	}

	public void setTxType(TxType txType) {
		this.txType = txType;
	}

	public String getOperateUserId() {
		return operateUserId;
	}

	public void setOperateUserId(String operateUserId) {
		this.operateUserId = operateUserId;
	}

	public String getOperateUserName() {
		return operateUserName;
	}

	public void setOperateUserName(String operateUserName) {
		this.operateUserName = operateUserName;
	}

	public BigDecimal getAfterBalance() {
		return afterBalance;
	}

	public void setAfterBalance(BigDecimal afterBalance) {
		this.afterBalance = afterBalance;
	}

	public BigDecimal getBeforeBalance() {
		return beforeBalance;
	}

	public void setBeforeBalance(BigDecimal beforeBalance) {
		this.beforeBalance = beforeBalance;
	}

	public String getTxTypeName() {
		return txTypeName;
	}

	public void setTxTypeName() {
		this.txTypeName = this.txType.getName();
	}

	public Integer getIsDeleted() {
		return isDeleted;
	}

	public void setIsDeleted(Integer isDeleted) {
		this.isDeleted = isDeleted;
	}

	public String getUserId() {
		return userId;
	}

	public void setUserId(String userId) {
		this.userId = userId;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}
}
